const path = require('path');
const TerserPlugin = require('terser-webpack-plugin');

module.exports = {
  entry: './src/index.ts', // 入口文件
  module: {
    rules: [
      {
        test: /\.ts$/,
        use: 'ts-loader',
        exclude: /node_modules/,
      },
    ],
  },
  resolve: {
    extensions: ['.ts', '.js'],
  },
  output: {
    filename: 'bundle.min.js', // 输出的文件名
    path: path.resolve(__dirname, 'dist'),
    library: 'WeSkinnyBlobAES', // UMD 库名
    libraryTarget: 'umd', // 使用 UMD 格式输出
    globalObject: 'this', // 兼容 Node.js 和浏览器
  },
  mode: 'production', // 使用生产模式打包
  optimization: {
    minimize: true, // 启用代码压缩
    minimizer: [new TerserPlugin()], // 使用 Terser 进行压缩
  },
};
